package com.vanke.devops.domain.base;

import com.baomidou.mybatisplus.plugins.Page;
import com.vanke.core.exception.VankeBusinessException;

import java.util.List;
import java.util.Map;

/**
 * @author 陈景阳
 * @since 2017/12/4
 */
public interface IBaseService<T> extends com.vanke.core.codegen.service.IBaseService<T> {

    /**
     * 根据Id列表获取数据
     * @param ids
     * @return
     */
    List<T> queryByIds(List<Integer> ids);


    /**
     * 根据相应列列表获取数据
     * @param colIds
     * @param normalColName
     * @param param 筛选条件
     * @return
     */
    <O> List<T> queryByNIds(List<O> colIds, String normalColName, T param);

    /**
     * 根据相应列列表获取数据
     * @param colIds 常用数据类型int,long,string
     * @param normalColName 普通列名
     * @return
     */
    <O> List<T> queryByNIds(List<O> colIds, String normalColName);

    /**
     * 当前用户ID
     * @return ID
     */
    Integer getCurrUser();
}
